在某些特定业务场景下,公共镜像无法完全满足需求。因此需要创建针对特定业务场景的、高度定制的ContainerOS镜像。本文档将为您介绍整个自定义镜像的制作流程,确保能够高效地生成符合特定需求的ContainerOS镜像。
基于ContainerOS镜像模板创建自定义镜像
本文以ContainerOS公共镜像举例,镜像ID为lifsea_3_x64_10G_containerd_1_6_28_alibase_20240202.vhd。
登录ECS管理控制台。
在左侧导航栏,选择 。
在页面左侧顶部,选择目标资源所在的资源组和地域。
在镜像构建页面,单击创建镜像模板。
如果您第一次访问镜像构建服务,将进入镜像构建欢迎页,您需要先单击立即体验进入镜像构建页面。
在创建镜像模板页面,设置相关参数,然后单击确定。更多信息,请参见配置项说明。
在ContainerOS中安装Vim软件包的Dockerfile示例如下:
FROM IMAGE:lifsea_3_x64_10G_containerd_1_6_28_alibase_20240202.vhd RUN lifseacli pkg install vim RUN rm -rf /var/ignition.booted
关于如何在ContainerOS中安装软件包的操作,请参见如何在ContainerOS中安装、升级软件包。
更多Dockerfile模板指令集,请参见镜像构建服务(ImageBuilder)指令集。
重要为了确保使用自定义镜像创建的节点池能够正常启动,请务必删除/var/ignition.booted文件。
创建成功后,单击镜像ID可跳转至镜像构建页面,在此可以查看构建历史和模板信息。
镜像创建完成后,您可以通过控制台左侧
页面查看已创建的自定义镜像。
后续操作
您可以通过自定义镜像进行集群创建,快速上线产品业务和部署业务场景。使用自定义镜像创建ACK集群,请参见使用自定义镜像创建ACK集群。也可以选择自定义镜像进行集群扩容,请参见扩缩容ACK集群的节点。
您可以通过提交工单申请开通自定义镜像选择和实例自定义数据功能。
常见问题
为什么不使用Packer的方式创建自定义镜像?
为了减少系统被攻击的风险并提升系统的整体安全性能,ContainerOS已经移除了OpenSSH组件。由Packer构建自定义镜像的过程中要求通过SSH协议连接到基础镜像,因此在ContainerOS中不能使用Packer进行自定义镜像的构建。
- 本页导读